
#from .image import 
from .menu import *
from .book_img import *
from .book_media import *
from .book_null import *
from .book_richtext import *
from .book_russia import *
from .book_shell import *
from .book_stc import *
from .book_table import *
from .book import *
from .config import *

BOOK.__new__(BOOK,
    img = Book_image,
    media = Book_media,
    table = Book_table,
    text = Book_text,
    _stc = Book_stc,
    null = Book_null
    )


class Type_dict(object):
    def __new__(cls, value):
        if hasattr(cls, "Getobj" + value):
            return getattr(cls, "Getobj" + value)()

    @classmethod
    def Getobjpy(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_PY)

    @classmethod
    def Getobjpyw(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_PY)

    @classmethod
    def Getobjpyi(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_PY)

    @classmethod
    def Getobjgo(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_GO)

    @classmethod
    def Getobjlua(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_LUA)

    @classmethod
    def Getobjrs(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_RUST)

    @classmethod
    def Getobjconfig(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_CONF)

    @classmethod
    def Getobjconf(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_CONF)

    @classmethod
    def Getobjyaml(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_YAML)

    @classmethod
    def Getobjyml(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_YAML)

    @classmethod
    def Getobjjson(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_JSON)

    @classmethod
    def Getobjcss(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_CSS)

    @classmethod
    def Getobjhtml(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_HTML)

    @classmethod
    def Getobjxml(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_XML)

    @classmethod
    def Getobjui(self):
        return (BOOK.M_PROGRAMME_CLASS, TEXT_TYPE_XML)

    @classmethod
    def Getobjxls(self):
        return (BOOK.M_TABLE_CLASS, TEXT_TYPE_XLSX)

    @classmethod
    def Getobjxlsx(self):
        return (BOOK.M_TABLE_CLASS, TEXT_TYPE_XLSX)

    @classmethod
    def Getobjcsv(self):
        return (BOOK.M_TABLE_CLASS, TEXT_TYPE_CSV)

    @classmethod
    def Getobjmp3(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_MP3)

    @classmethod
    def Getobjmp4(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_MP4)

    @classmethod
    def Getobjwav(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_WAV)

    @classmethod
    def Getobjwma(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_WMA)

    @classmethod
    def Getobjflac(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_FLAC)

    @classmethod
    def Getobjts(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_TS)

    @classmethod
    def Getobjaac(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_AAC)

    @classmethod
    def Getobjavi(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_AVI)

    @classmethod
    def Getobjflv(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_FLV)

    @classmethod
    def Getobjm4a(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_M4A)

    @classmethod
    def Getobjmpeg(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_MPEG)

    @classmethod
    def Getobjmpg(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_MPE)

    @classmethod
    def Getobjogg(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_OGG)

    @classmethod
    def Getobjmov(self):
        return (BOOK.M_MEDIA_CLASS, MEDIA_TYPE_MOV)

    @classmethod
    def Getobjjpeg(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_JPEG)

    @classmethod
    def Getobjjpg(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_JPEG)

    @classmethod
    def Getobjpng(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_PNG)

    @classmethod
    def Getobjbmp(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_BMP)

    @classmethod
    def Getobjgif(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_GIF)

    @classmethod
    def Getobjico(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_ICO)

    @classmethod
    def Getobjpcx(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_PCX)

    @classmethod
    def Getobjpnm(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_PNM)

    @classmethod
    def Getobjtiff(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_TIFF)

    @classmethod
    def Getobjtga(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_TGA)

    @classmethod
    def Getobjxpm(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_XPM)

    @classmethod
    def Getobjcur(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_CUR)

    @classmethod
    def Getobjani(self):
        return (BOOK.M_IMAGE_CLASS, IMAGE_TYPE_ANI)